@Niki
2年前 提问
1个回答
防御web开放重定向漏洞有什么办法
安全小白成长记
2年前
防御web开放重定向漏洞的办法:
不在web应用程序中使用任何重定向,这是最好的解决办法。
使用固定目标页面列表。将其完整的URL存储在数据库表中,并使用标识符作为请求参数而不是URL本身来调用它们。例如,存储
http://example2.com
在数据库表与标识符42,然后使用下面的呼叫重定向到example2.com:https://example.com/重定向.php?redir_id=42
。如果不能使用固定的重定向目标列表,请过滤不受信任的输入,如果可以,请使用白名单,而不是黑名单。确保检查部分字符串,例如http:// example.com .evil.com是有效的URL。此外,禁止使用除HTTP和HTTPS之外的所有协议。另请注意,尽管您尽了最大的努力,攻击者还是有可能找到绕过您的过滤器的方法。